home *** CD-ROM | disk | FTP | other *** search
/ Apple Reference & Presen…rary 6 (Reseller Edition) / Apple Ref. & Pres. Lib.v6.0.toast / mac / 3-Presentations / Apple Demos / CPUs / Macintosh Solutions Demo / Macintosh Solutions 1.0 / stack.txt < prev   
Text File  |  1990-08-24  |  8KB  |  273 lines

  1. -- stack: in.0
  2. -- format: 8 (HyperCard 1)
  3. -- flags: 0x5000 (can't delete)
  4. -- protect password hash: 0
  5. -- maximum user level: 5 (scripting)
  6. -- window: Rect(x1=0, y1=0, x2=0, y2=0)
  7. -- screen: Rect(x1=0, y1=0, x2=0, y2=0)
  8. -- card dimensions: w=0 h=0
  9. -- scroll: x=0 y=0
  10. -- background count: 4
  11. -- first background id: 2732
  12. -- card count: 36
  13. -- first card id: 2980
  14. -- list block id: 23451
  15. -- print block id: 10709
  16. -- font table block id: 0
  17. -- style table block id: 0
  18. -- free block count: 0
  19. -- free size: 0 bytes
  20. -- total size: 279648 bytes
  21. -- stack block size: 7680 bytes
  22. -- created by hypercard version: 0x01258000
  23. -- compacted by hypercard version: 0x01258000
  24. -- modified by hypercard version: 0x01258000
  25. -- opened by hypercard version: 0x01258000
  26. -- patterns[0]: 0x0000000000000000
  27. -- patterns[1]: 0x8000000008000000
  28. -- patterns[2]: 0x8800220088002200
  29. -- patterns[3]: 0x8888222288882222
  30. -- patterns[4]: 0x88AA22AA88AA22AA
  31. -- patterns[5]: 0xCCAA33AACCAA33AA
  32. -- patterns[6]: 0xEEAABBAAEEAABBAA
  33. -- patterns[7]: 0xEEBBBBEEEEBBBBEE
  34. -- patterns[8]: 0xFFBBFFEEFFBBFFEE
  35. -- patterns[9]: 0xFFBBFFFFFFBBFFFF
  36. -- patterns[10]: 0x8010022001084004
  37. -- patterns[11]: 0xFFFFFFFFFFFFFFFF
  38. -- patterns[12]: 0x8822882288228822
  39. -- patterns[13]: 0x1122448811224488
  40. -- patterns[14]: 0xC4800C6843023026
  41. -- patterns[15]: 0xB130031BD8C00C8D
  42. -- patterns[16]: 0xAA00AA00AA00AA00
  43. -- patterns[17]: 0x8822552288225522
  44. -- patterns[18]: 0x8855225588552255
  45. -- patterns[19]: 0x77DD77DD77DD77DD
  46. -- patterns[20]: 0x8000000000000000
  47. -- patterns[21]: 0xAA55AA55AA55AA55
  48. -- patterns[22]: 0x038448300C020101
  49. -- patterns[23]: 0x8244394482010101
  50. -- patterns[24]: 0x8814224188412214
  51. -- patterns[25]: 0x8080413E080814E3
  52. -- patterns[26]: 0x22048C7422179810
  53. -- patterns[27]: 0xBE808808EB088880
  54. -- patterns[28]: 0x25C8328964244C92
  55. -- patterns[29]: 0xA29C41BE2AC914EB
  56. -- patterns[30]: 0x40A00000040A0000
  57. -- patterns[31]: 0x8040200002040800
  58. -- patterns[32]: 0xAA00800088008000
  59. -- patterns[33]: 0xFF80808080808080
  60. -- patterns[34]: 0x081C22C180010204
  61. -- patterns[35]: 0xFF808080FF080808
  62. -- patterns[36]: 0xF87422478F172271
  63. -- patterns[37]: 0xBF00BFBFB0B0B0B0
  64. -- patterns[38]: 0xFF7FBE5DA2418000
  65. -- patterns[39]: 0xFAF5FAF5A050A050
  66. -- checksum: 0x0
  67. ----- HyperTalk script -----
  68. -----------------------------------------------------------------------
  69. --                        Macintosh Solutions
  70. --                     ¬© 1990 Apple Computer, Inc.
  71. --                        ¬© 1990 HyperPro,Inc.
  72. --                           Version 1.0
  73. -----------------------------------------------------------------------
  74. STACK: Macintosh Solutions
  75.  
  76. HANDLERS: closestack,doMenu,arrowkey,doAttract,endAttract,
  77. --        openstack,badVersion,idle,checkReset,setTimerLoc,
  78. --        goSubMenu,go,security,show,showCopyright
  79.  
  80. FUNCTIONS: alphaNum
  81.  
  82. RESOURCES:
  83. vers: ,
  84. FOND: Garamond
  85. FONT: Garamond,,,,,,,,,,
  86. XFCN: Display,GetValue
  87. XCMD: TitleBar,SaveColorState,GETMAXCOLORS,SetColorState,flushevents,WriteVersion,SetVolume,PlayVW,ClipVW,GetFrameVW,SetScreenVW,DrawPict,NewWindow,NewObject,SetWindow,Color,Objects,Windows,SetValue
  88. PICT: Macintosh Classic,Macintosh IIci,Macintosh IIfx,Macintosh IIsi,Macintosh LC,Macintosh Portable,Macintosh SE/30,Classic,IIci,IIfx,IIsi,LC,Portable,SE/30,Color Apple
  89.  
  90. Size of script: 2935 chars
  91. ----------------------------------------------------------------------
  92. -- Apple Team:
  93. -- Joanne Varni (Project Manager)
  94.  
  95. -- HyperPro Team:
  96. -- Garth Catterall (VideoWorks Engineer)
  97. -- Peter Cleaveland (Implementor)
  98. -- Lode Coen (Director of Computer Graphics)
  99. -- David Donaldson (Creative Director)
  100. -- Paul Foraker (Project Manager, Technical Director)
  101. -- Jeff Stokol (Illustrator)
  102. -- Elaine Ung (Test Engineer)
  103.  
  104. -----------------------------------------------------------------------
  105. on closestack
  106.   global KWspace,MSscripting,RPStackName
  107.   showCopyRight
  108.   security FALSE
  109.   if RPStackName = "" then titleBar show
  110.   put empty into MSscripting
  111.   if KWspace is not empty then windows killAll
  112. end closestack
  113.  
  114. on openstack
  115.   global InstoreReturnPath
  116.   if the version < 1.2 then badVersion
  117.   setTimerLoc
  118.   put "Main Menu" into InstoreReturnPath
  119. end openstack
  120.  
  121. on security what
  122.   global MSscripting,InstoreUserPrefs,RPStackName
  123.   if what is TRUE then
  124.     put FALSE into MSscripting
  125.     put the userlevel into line 1 of InstoreUserPrefs
  126.     put the blindTyping into line 2 of InstoreUserPrefs
  127.     hide msg
  128.     set the loc of msg to -1000,-1000
  129.     set blindTyping to FALSE
  130.     hide menuBar
  131.     titleBar hide
  132.     set the cantModify of this stack to TRUE
  133.     set userLevel to 0
  134.   else
  135.     put TRUE into MSscripting
  136.     if line 1 of InstoreUserPrefs is not empty then set userLevel to line 1 of InstoreUserPrefs else set userLevel to 2
  137.     if line 2 of InstoreUserPrefs is not empty then set blindTyping to line 2 of InstoreUserPrefs
  138.     if rpStackName is "" then
  139.       --‚Ä¢‚Ä¢ Added by Medior 8/8/90
  140.       titleBar show
  141.       show menuBar
  142.     end if
  143.     set the cantModify of this stack to FALSE
  144.     set the loc of msg to 24,364
  145.   end if
  146. end security
  147.  
  148. on badVersion
  149.   answer "Sorry, this stack requires HyperCard v 1.2." with "Home" or "Quit"
  150.   if it is "Quit" then doMenu "Quit HyperCard" else
  151.   set lockmessages to TRUE
  152.   go Home
  153. end if
  154. end badVersion
  155.  
  156. on idle
  157.   global NextResetTime, firstLoc, MSscripting --, NeedMenuRefresh
  158.   if MSscripting is EMPTY then security TRUE
  159.   if MSscripting is true then pass idle
  160.   checkReset --see if it‚Äôs time to reset
  161.   pass idle
  162. end idle
  163.  
  164. on checkReset
  165.   global NextResetTime, firstLoc
  166.   if firstLoc <> the mouseLoc then setTimerLoc
  167.   if the seconds > NextResetTime then
  168.  
  169.     -- there is no final count, go right to attract loop
  170.     doAttract
  171.  
  172.     setTimerLoc -- reset the switches
  173.   end if
  174. end checkReset
  175.  
  176. on setTimerLoc -- called by all events that inhibit reset
  177.   global NextResetTime, firstLoc
  178.   put the seconds + cd fld "timeOut" of cd "Main Menu" into NextResetTime
  179.   put the mouseLoc into firstLoc
  180. end setTimerLoc
  181.  
  182. on doMenu what
  183.   global MSscripting,RPStackName
  184.   if MSscripting is TRUE then pass doMenu
  185.   if what is in "Home,Quit HyperCard" AND the shiftKey is "down" then pass doMenu
  186.   if what is in "Home,Quit HyperCard" AND RPStackName is not empty then
  187.     beep
  188.     set cursor to "watch"
  189.     put RPStackName into shortName
  190.     repeat until offset(":",shortName) = 0
  191.       delete char 1 to offset(":",shortName) of shortName
  192.     end repeat
  193.     delete last char of shortName
  194.     answer "This will return to "&shortName&"." with "Cancel" or "OK"
  195.     if it is "Cancel" then exit doMenu
  196.     lock screen
  197.     go RPStackName
  198.     unlock screen with dissolve
  199.   end if
  200. end doMenu
  201.  
  202. on arrowkey
  203.   global MSscripting
  204.   if MSscripting = TRUE then pass arrowkey
  205. end arrowkey
  206.  
  207. on show what
  208.   global MSscripting
  209.   if MSscripting is TRUE then pass show
  210. end show
  211.  
  212. on doAttract
  213.   global firstLoc
  214.   go cd 1
  215.   put the mouseLoc into firstLoc
  216.   playVW "attract 1",vwstage,vwclick,vwnoupdate
  217.   getframeVW
  218.   if (the mouseClick) OR (the mouseLoc ‚↠firstLoc) OR (the result is not 0) then endAttract
  219.   playVW "attract 2",vwstage,vwclick,vwnoupdate
  220.   getframeVW
  221.   if (the mouseClick) OR (the mouseLoc ‚↠firstLoc) OR (the result is not 0) then endAttract
  222.   playVW "attract 3",vwstage,vwclickp,vwnoupdate
  223.   getframeVW
  224.   if (the mouseClick) OR (the mouseLoc ‚↠firstLoc) OR (the result is not 0) then endAttract
  225.   playVW "attract 4",vwstage,vwclick,vwnoupdate
  226.  
  227.   endAttract
  228. end doAttract
  229.  
  230. on endAttract
  231.   playVW "Grey Frame",vwstage--,vwnoupdate
  232.   go this card
  233.   exit to HyperCard
  234. end endattract
  235.  
  236. on goSubMenu firstChar
  237.   put "USA" & firstChar & "1" into cardName
  238.   go card cardName
  239. end goSubMenu
  240.  
  241. on go
  242.   set cursor to watch
  243.   pass go
  244. end go
  245.  
  246. function alphaNum whichLetter
  247. put "A,B,C,D,E,F" into list
  248. repeat with i = 1 to the number of items in list
  249.   if whichLetter is item i of list then return i
  250. end repeat
  251. end alphaNum
  252.  
  253. on showCopyright
  254.   -- Requires PICT ID 601, the copyright notice PICT
  255.   -- Will wait a specified time regardless of keyboard or mouse activity
  256.  
  257.   put 3 into waitTime      -- number of seconds to display window
  258.   put "wait" && waitTime && "secs" into waitMsg
  259.  
  260.   setWindow 3
  261.   windows "recall", 1003
  262.   windows "show",3
  263.   get display(0, 3, waitMsg)
  264.  
  265.   set lockRecent to TRUE
  266.   go cd "CopyRight"
  267.   lock screen
  268.   go cd 1
  269.   set lockRecent to FALSE
  270.   wait 3 seconds
  271. end showCopyright
  272.  
  273.